Extreme YANG Tree

module: extreme-snmp
  +--rw snmp
     +--rw communities
     |  +--rw community* [community-name]
     |     +--rw community-name    -> ../config/community-name
     |     +--rw config
     |     |  +--rw community-name?   string
     |     +--rw state
     |        +--rw community-name?   string
     +--rw notification-recipients
     |  +--rw notification-recipient* [hostname community-or-user-name]
     |     +--rw hostname                  -> ../config/hostname
     |     +--rw community-or-user-name    -> ../config/community-or-user-name
     |     +--rw config
     |     |  +--rw hostname?                 oc-inet-types:host
     |     |  +--rw community-or-user-name?   string
     |     |  +--rw udp-port?                 uint16
     |     |  +--rw notif-type?               notification-type
     |     +--rw state
     |        +--rw hostname?                 oc-inet-types:host
     |        +--rw community-or-user-name?   string
     |        +--rw udp-port?                 uint16
     |        +--rw notif-type?               notification-type
     +--rw users
        +--rw user* [name]
           +--rw name      -> ../config/name
           +--rw config
           |  +--rw name?       string
           |  +--rw auth        auth-type
           |  +--rw auth-key?   string
           |  +--rw priv?       priv-type
           |  +--rw priv-key?   string
           +--rw state
              +--rw name?       string
              +--rw auth        auth-type
              +--rw auth-key?   string
              +--rw priv?       priv-type
              +--rw priv-key?   string

module: extreme-lag-ext

  augment /oc-if:interfaces/oc-if:interface/oc-lag:aggregation/oc-lag:state:
    +--ro member-list*                      oc-if:base-interface-ref
    +--ro active-member-list*               oc-if:base-interface-ref
    +--ro lag-load-balance-method?          aggregation-load-balance-method
    +--ro lag-load-balance-method-custom*   aggregation-load-balance-method-custom
  augment /oc-if:interfaces/oc-if:interface/oc-lag:aggregation/oc-lag:config:
    +--rw lag-load-balance-method?          aggregation-load-balance-method
    +--rw lag-load-balance-method-custom*   aggregation-load-balance-method-custom

module: extreme-pcap
  +--ro pcap
     +--ro files
        +--ro file* [name]
           +--ro name     -> ../state/name
           +--ro state
              +--ro name?                 string
              +--ro last-modified-time?   oc-types:timeticks64
              +--ro size?                 uint32
              +--ro packet-count?         uint32

module: extreme-lacp-ext

  augment /oc-if:interfaces/oc-if:interface/oc-lag:aggregation/oc-lag:config:
    +--rw max-bundle?   uint16
  augment /oc-if:interfaces/oc-if:interface/oc-lag:aggregation/oc-lag:state:
    +--ro max-bundle?   uint16
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:config:
    +--rw port-priority?   uint16
    +--rw interval?        oc-lacp:lacp-period-type
    +--rw lacp-mode?       oc-lacp:lacp-activity-type
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:state:
    +--ro port-priority?   uint16
    +--ro interval?        oc-lacp:lacp-period-type
    +--ro lacp-mode?       oc-lacp:lacp-activity-type

module: extreme-acl-ext

  augment /oc-acl:acl/oc-acl:config:
    +--rw count?   boolean
  augment /oc-acl:acl/oc-acl:state:
    +--ro count?   boolean
  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry/oc-acl:actions/oc-acl:config:
    +--rw count?   boolean
  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry/oc-acl:actions/oc-acl:state:
    +--ro count?   boolean
  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry/oc-acl:actions/oc-acl:config:
    +--rw qos-forwarding-group?   qos-forwarding-group-name-ref
  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry/oc-acl:actions/oc-acl:state:
    +--ro qos-forwarding-group?   qos-forwarding-group-name-ref

module: extreme-tunnel-encap
  +--rw tunnel-encaps
     +--rw tunnel-encap* [name]
        +--rw name      -> ../config/name
        +--rw config
        |  +--rw name?                    string
        |  +--rw description?             string
        |  +--rw source-ipv4-addr?        oc-inet:ipv4-address
        |  +--rw source-ipv6-addr?        oc-inet:ipv6-address
        |  +--rw destination-ipv4-addr?   oc-inet:ipv4-address
        |  +--rw destination-ipv6-addr?   oc-inet:ipv6-address
        |  +--rw source-mac-addr?         oc-yang:mac-address
        |  +--rw destination-mac-addr?    oc-yang:mac-address
        |  +--rw tunnel-type?             common-types:egress-encap-type
        |  +--rw tunnel-id?               uint32
        |  +--rw vlan-tag?                uint16
        |  +--rw vlan-pcp?                uint8
        +--ro state
           +--ro name?                    string
           +--ro description?             string
           +--ro source-ipv4-addr?        oc-inet:ipv4-address
           +--ro source-ipv6-addr?        oc-inet:ipv6-address
           +--ro destination-ipv4-addr?   oc-inet:ipv4-address
           +--ro destination-ipv6-addr?   oc-inet:ipv6-address
           +--ro source-mac-addr?         oc-yang:mac-address
           +--ro destination-mac-addr?    oc-yang:mac-address
           +--ro tunnel-type?             common-types:egress-encap-type
           +--ro tunnel-id?               uint32
           +--ro vlan-tag?                uint16
           +--ro vlan-pcp?                uint8
           +--ro counter* [port-id]
              +--ro port-id        uint32
              +--ro pkt-count?     uint64
              +--ro octet-count?   uint64

module: extreme-eth-ext

  augment /oc-if:interfaces/oc-if:interface/oc-if:state:
    +--ro if-mib
       +--ro if-last-change?   string
  augment /oc-if:interfaces/oc-if:interface/oc-if:state/oc-if:counters:
    +--ro if-mib-counter
       +--ro if-counter-discontinuity-time?   string
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:config:
    +--rw fec
       +--rw fec-mode?   fec-mode-type
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:state:
    +--ro fec
       +--ro fec-mode?   fec-mode-type
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:config:
    +--rw link-fault-signaling?   boolean
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:state:
    +--ro link-fault-signaling?   boolean
    +--ro link-fault-status?      string
    +--ro local-fault-count?      uint64
    +--ro remote-fault-count?     uint64
    +--ro last-local-fault?       oc-types:timeticks64
    +--ro last-remote-fault?      oc-types:timeticks64
  augment /oc-if:interfaces/oc-if:interface/oc-eth:ethernet/oc-eth:state/oc-eth:counters:
    +--ro bandwidth-utilization
       +--ro in-pkts-per-sec?    uint64
       +--ro out-pkts-per-sec?   uint64
       +--ro in-bits-per-sec?    uint64
       +--ro out-bits-per-sec?   uint64

module: extreme-acl-ipv4-ext

  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry:
    +--rw npb-acl-ipv4
       +--rw config
       |  +--rw source-ipv4?             oc-inet:ipv4-address
       |  +--rw source-ipv4-mask?        oc-inet:ipv4-address
       |  +--rw destination-ipv4?        oc-inet:ipv4-address
       |  +--rw destination-ipv4-mask?   oc-inet:ipv4-address
       |  +--rw dscp?                    oc-inet:dscp
       |  +--rw protocol?                oc-pkt-match-types:ip-protocol-type
       |  +--rw vlan-tag?                uint16
       |  +--rw network-id-type?         identityref
       |  +--rw network-id?              uint32
       |  +--rw length?                  uint16
       |  +--rw length-end?              uint16
       |  +--rw source-port?             oc-pkt-match-types:port-num-range
       |  +--rw destination-port?        oc-pkt-match-types:port-num-range
       |  +--rw tcp-flags*               identityref
       |  +--rw dont-fragment?           boolean
       |  +--rw more-fragment?           boolean
       |  +--rw icmp-type?               uint8
       |  +--rw icmp-code?               uint8
       |  +--rw igmp-type?               uint8
       |  +--rw igmp-group?              uint32
       |  +--rw esp-spi?                 uint32
       +--ro state
          +--ro source-ipv4?             oc-inet:ipv4-address
          +--ro source-ipv4-mask?        oc-inet:ipv4-address
          +--ro destination-ipv4?        oc-inet:ipv4-address
          +--ro destination-ipv4-mask?   oc-inet:ipv4-address
          +--ro dscp?                    oc-inet:dscp
          +--ro protocol?                oc-pkt-match-types:ip-protocol-type
          +--ro vlan-tag?                uint16
          +--ro network-id-type?         identityref
          +--ro network-id?              uint32
          +--ro length?                  uint16
          +--ro length-end?              uint16
          +--ro source-port?             oc-pkt-match-types:port-num-range
          +--ro destination-port?        oc-pkt-match-types:port-num-range
          +--ro tcp-flags*               identityref
          +--ro dont-fragment?           boolean
          +--ro more-fragment?           boolean
          +--ro icmp-type?               uint8
          +--ro icmp-code?               uint8
          +--ro igmp-type?               uint8
          +--ro igmp-group?              uint32
          +--ro esp-spi?                 uint32

module: extreme-acl-ipv6-ext

  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry:
    +--rw npb-acl-ipv6
       +--rw config
       |  +--rw source-ipv6?             oc-inet:ipv6-address
       |  +--rw source-ipv6-mask?        oc-inet:ipv6-address
       |  +--rw destination-ipv6?        oc-inet:ipv6-address
       |  +--rw destination-ipv6-mask?   oc-inet:ipv6-address
       |  +--rw dscp?                    oc-inet:dscp
       |  +--rw protocol?                oc-pkt-match-types:ip-protocol-type
       |  +--rw vlan-tag?                uint16
       |  +--rw network-id-type?         identityref
       |  +--rw network-id?              uint32
       |  +--rw length?                  uint16
       |  +--rw length-end?              uint16
       |  +--rw source-port?             oc-pkt-match-types:port-num-range
       |  +--rw destination-port?        oc-pkt-match-types:port-num-range
       |  +--rw tcp-flags*               identityref
       |  +--rw icmp-type?               uint8
       |  +--rw icmp-code?               uint8
       |  +--rw igmp-type?               uint8
       |  +--rw igmp-group?              uint32
       |  +--rw esp-spi?                 uint32
       +--ro state
          +--ro source-ipv6?             oc-inet:ipv6-address
          +--ro source-ipv6-mask?        oc-inet:ipv6-address
          +--ro destination-ipv6?        oc-inet:ipv6-address
          +--ro destination-ipv6-mask?   oc-inet:ipv6-address
          +--ro dscp?                    oc-inet:dscp
          +--ro protocol?                oc-pkt-match-types:ip-protocol-type
          +--ro vlan-tag?                uint16
          +--ro network-id-type?         identityref
          +--ro network-id?              uint32
          +--ro length?                  uint16
          +--ro length-end?              uint16
          +--ro source-port?             oc-pkt-match-types:port-num-range
          +--ro destination-port?        oc-pkt-match-types:port-num-range
          +--ro tcp-flags*               identityref
          +--ro icmp-type?               uint8
          +--ro icmp-code?               uint8
          +--ro igmp-type?               uint8
          +--ro igmp-group?              uint32
          +--ro esp-spi?                 uint32

module: extreme-acl-mac-ext

  augment /oc-acl:acl/oc-acl:acl-sets/oc-acl:acl-set/oc-acl:acl-entries/oc-acl:acl-entry:
    +--rw npb-acl-mac
       +--rw config
       |  +--rw source-mac?             oc-yang:mac-address
       |  +--rw source-mac-mask?        oc-yang:mac-address
       |  +--rw destination-mac?        oc-yang:mac-address
       |  +--rw destination-mac-mask?   oc-yang:mac-address
       |  +--rw pcp?                    uint8
       |  +--rw ethertype?              oc-pkt-match-types:ethertype-type
       |  +--rw network-id-type?        identityref
       |  +--rw network-id?             uint32
       |  +--rw length?                 uint16
       |  +--rw vlan-tag?               uint16
       +--ro state
          +--ro source-mac?             oc-yang:mac-address
          +--ro source-mac-mask?        oc-yang:mac-address
          +--ro destination-mac?        oc-yang:mac-address
          +--ro destination-mac-mask?   oc-yang:mac-address
          +--ro pcp?                    uint8
          +--ro ethertype?              oc-pkt-match-types:ethertype-type
          +--ro network-id-type?        identityref
          +--ro network-id?             uint32
          +--ro length?                 uint16
          +--ro vlan-tag?               uint16

module: extreme-egress-group
  +--rw egress-groups
     +--rw egress-group* [name]
        +--rw name              -> ../config/name
        +--rw config
        |  +--rw name?          string
        |  +--rw description?   string
        +--ro state
        |  +--ro name?           string
        |  +--ro description?    string
        |  +--ro packet-count?   uint64
        |  +--ro byte-count?     uint64
        +--rw egress-objects
           +--rw egress-object* [name]
              +--rw name      -> ../config/name
              +--rw config
              |  +--rw name?   extreme-egress:egress-ref
              +--ro state
                 +--ro name?   extreme-egress:egress-ref

module: extreme-egress
  +--rw egress-objects
     +--rw egress-object* [name]
        +--rw name          -> ../config/name
        +--rw config
        |  +--rw name?              string
        |  +--rw listener-policy?   listener-policy:listener-policy-ref
        |  +--rw encap?             tunnel-encap:tunnel-encap-ref
        |  +--rw description?       string
        +--ro state
        |  +--ro name?              string
        |  +--ro listener-policy?   listener-policy:listener-policy-ref
        |  +--ro encap?             tunnel-encap:tunnel-encap-ref
        |  +--ro description?       string
        |  +--ro packet-count?      uint64
        |  +--ro byte-count?        uint64
        +--rw interfaces
           +--rw interface* [precedence]
              +--rw precedence    -> ../config/precedence
              +--rw config
              |  +--rw precedence?   uint16
              |  +--rw interface?    string
              +--ro state
                 +--ro precedence?   uint16
                 +--ro interface?    string

module: extreme-ingress-group
  +--rw ingress-groups
     +--rw ingress-group* [name]
        +--rw name       -> ../config/name
        +--rw config
        |  +--rw name?          string
        |  +--rw bind-policy?   routemap:route-map-ref
        |  +--rw description?   string
        +--ro state
        |  +--ro name?                        string
        |  +--ro bind-policy?                 routemap:route-map-ref
        |  +--ro description?                 string
        |  +--ro packet-count?                uint64
        |  +--ro byte-count?                  uint64
        |  +--ro outer-tunnel-packet-count?   uint64
        |  +--ro outer-tunnel-byte-count?     uint64
        +--rw tunnels
           +--rw tunnel* [traffic-type]
           |  +--rw traffic-type    -> ../config/traffic-type
           |  +--rw config
           |  |  +--rw traffic-type?          common-types:sap-trfc-type
           |  |  +--rw tunnel-id?             uint32
           |  |  +--rw source-ip-addr?        oc-inet:ip-address
           |  |  +--rw source-ip-mask?        oc-inet:ip-address
           |  |  +--rw destination-ip-addr?   oc-inet:ip-address
           |  |  +--rw destination-ip-mask?   oc-inet:ip-address
           |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
           |  |  +--rw source-port?           oc-inet:port-number
           |  |  +--rw destination-port?      oc-inet:port-number
           |  |  +--rw scope?                 boolean
           |  |  +--rw decap?                 boolean
           |  +--ro state
           |     +--ro traffic-type?          common-types:sap-trfc-type
           |     +--ro tunnel-id?             uint32
           |     +--ro source-ip-addr?        oc-inet:ip-address
           |     +--ro source-ip-mask?        oc-inet:ip-address
           |     +--ro destination-ip-addr?   oc-inet:ip-address
           |     +--ro destination-ip-mask?   oc-inet:ip-address
           |     +--ro protocol?              oc-pkt-match-types:ip-protocol-type
           |     +--ro source-port?           oc-inet:port-number
           |     +--ro destination-port?      oc-inet:port-number
           |     +--ro scope?                 boolean
           |     +--ro decap?                 boolean
           +--rw outer-tunnel* [traffic-type]
              +--rw traffic-type    -> ../config/traffic-type
              +--rw config
              |  +--rw traffic-type?          common-types:sap-trfc-type
              |  +--rw tunnel-id?             uint32
              |  +--rw source-ip-addr?        oc-inet:ip-address
              |  +--rw source-ip-mask?        oc-inet:ip-address
              |  +--rw destination-ip-addr?   oc-inet:ip-address
              |  +--rw destination-ip-mask?   oc-inet:ip-address
              |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
              |  +--rw source-port?           oc-inet:port-number
              |  +--rw destination-port?      oc-inet:port-number
              |  +--rw mpls-header* [position]
              |  |  +--rw position         uint8
              |  |  +--rw label?           uint32
              |  |  +--rw traffic-class?   uint8
              |  |  +--rw time-to-live?    uint8
              |  +--rw mirror?                mirror:mirror-ref
              |  +--rw log?                   common-types:log-type
              +--ro state
                 +--ro traffic-type?          common-types:sap-trfc-type
                 +--ro tunnel-id?             uint32
                 +--ro source-ip-addr?        oc-inet:ip-address
                 +--ro source-ip-mask?        oc-inet:ip-address
                 +--ro destination-ip-addr?   oc-inet:ip-address
                 +--ro destination-ip-mask?   oc-inet:ip-address
                 +--ro protocol?              oc-pkt-match-types:ip-protocol-type
                 +--ro source-port?           oc-inet:port-number
                 +--ro destination-port?      oc-inet:port-number
                 +--ro mpls-header* [position]
                 |  +--ro position         uint8
                 |  +--ro label?           uint32
                 |  +--ro traffic-class?   uint8
                 |  +--ro time-to-live?    uint8
                 +--ro mirror?                mirror:mirror-ref
                 +--ro log?                   common-types:log-type

  augment /oc-if:interfaces/oc-if:interface/oc-if:config:
    +--rw ingress-groups* [ingress-group]
       +--rw ingress-group    ingress-group-ref

module: extreme-listener-policy
  +--rw listener-policies
     +--rw listener-policy* [name]
        +--rw name                         -> ../config/name
        +--rw config
        |  +--rw name?   string
        +--ro state
        |  +--ro name?   string
        +--rw listener-policy-instances
           +--rw listener-policy-instance* [sequence-id]
              +--rw sequence-id    -> ../config/sequence-id
              +--rw config
              |  +--rw sequence-id?       uint32
              |  +--rw permit-deny?       boolean
              |  +--rw l2acl?             string
              |  +--rw ipv4acl?           string
              |  +--rw ipv6acl?           string
              |  +--rw truncate?          uint16
              |  +--rw strip-vn-tag?      boolean
              |  +--rw strip-br-tag?      boolean
              |  +--rw strip-vlan-tag?    boolean
              |  +--rw add-vlan-tag?      uint16
              |  +--rw terminate?         boolean
              |  +--rw terminate-outer?   boolean
              |  +--rw terminate-inner?   boolean
              |  +--rw description?       string
              +--rw state
                 +--rw sequence-id?       uint32
                 +--rw permit-deny?       boolean
                 +--rw l2acl?             string
                 +--rw ipv4acl?           string
                 +--rw ipv6acl?           string
                 +--rw truncate?          uint16
                 +--rw strip-vn-tag?      boolean
                 +--rw strip-br-tag?      boolean
                 +--rw strip-vlan-tag?    boolean
                 +--rw add-vlan-tag?      uint16
                 +--rw terminate?         boolean
                 +--rw terminate-outer?   boolean
                 +--rw terminate-inner?   boolean
                 +--rw description?       string

module: extreme-policy-statistics
  +--rw npb-policy-data-sets
     +--rw npb-policy-data-set* [owner]
        +--rw owner           -> ../config/owner
        +--rw config
        |  +--rw owner?   identityref
        +--ro state
        |  +--ro owner?   identityref
        +--rw policy-stats
           +--rw policy-stat* [sap]
              +--rw sap       -> ../config/sap
              +--rw config
              |  +--rw sap?        uint16
              |  +--rw sap-name?   string
              |  +--rw policy?     string
              +--ro state
              |  +--ro sap?        uint16
              |  +--ro sap-name?   string
              |  +--ro policy?     string
              +--rw ipv4
              |  +--rw acl-stats
              |     +--rw acl-stat* [acl-name]
              |        +--rw acl-name    -> ../config/acl-name
              |        +--rw config
              |        |  +--rw acl-name?   string
              |        +--ro state
              |           +--ro acl-name?            string
              |           +--ro acl-stats-entries
              |              +--ro acl-stats-entry* [sequence-id]
              |                 +--ro sequence-id    -> ../config/sequence-id
              |                 +--ro config
              |                 |  +--ro sequence-id?   uint32
              |                 +--ro state
              |                    +--ro sequence-id?    uint32
              |                    +--ro packet-count?   uint64
              |                    +--ro byte-count?     uint64
              |                    +--ro packets-rate?   uint64
              |                    +--ro bits-rate?      uint64
              +--rw ipv6
              |  +--rw acl-stats
              |     +--rw acl-stat* [acl-name]
              |        +--rw acl-name    -> ../config/acl-name
              |        +--rw config
              |        |  +--rw acl-name?   string
              |        +--ro state
              |           +--ro acl-name?            string
              |           +--ro acl-stats-entries
              |              +--ro acl-stats-entry* [sequence-id]
              |                 +--ro sequence-id    -> ../config/sequence-id
              |                 +--ro config
              |                 |  +--ro sequence-id?   uint32
              |                 +--ro state
              |                    +--ro sequence-id?    uint32
              |                    +--ro packet-count?   uint64
              |                    +--ro byte-count?     uint64
              |                    +--ro packets-rate?   uint64
              |                    +--ro bits-rate?      uint64
              +--rw mac
                 +--rw acl-stats
                    +--rw acl-stat* [acl-name]
                       +--rw acl-name    -> ../config/acl-name
                       +--rw config
                       |  +--rw acl-name?   string
                       +--ro state
                          +--ro acl-name?            string
                          +--ro acl-stats-entries
                             +--ro acl-stats-entry* [sequence-id]
                                +--ro sequence-id    -> ../config/sequence-id
                                +--ro config
                                |  +--ro sequence-id?   uint32
                                +--ro state
                                   +--ro sequence-id?    uint32
                                   +--ro packet-count?   uint64
                                   +--ro byte-count?     uint64
                                   +--ro packets-rate?   uint64
                                   +--ro bits-rate?      uint64

module: extreme-routemap
  +--rw routemaps
     +--rw routemap* [name]
        +--rw name                  -> ../config/name
        +--rw config
        |  +--rw name?   string
        +--ro state
        |  +--ro name?   string
        +--rw routemap-instances
           +--rw routemap-instance* [sequence-id]
              +--rw sequence-id    -> ../config/sequence-id
              +--rw config
              |  +--rw sequence-id?            uint32
              |  +--rw permit-deny?            boolean
              |  +--rw l2-acl?                 string
              |  +--rw ipv4-acl?               string
              |  +--rw ipv6-acl?               string
              |  +--rw egress-group?           eg-group:egress-group-ref
              |  +--rw sfc-id?                 uint32
              |  +--rw description?            string
              |  +--rw truncation-length?      uint16
              |  +--rw terminate?              boolean
              |  +--rw scope-shift?            boolean
              |  +--rw qos-forwarding-group?   qos-forwarding-group-name-ref
              +--ro state
                 +--ro sequence-id?            uint32
                 +--ro permit-deny?            boolean
                 +--ro l2-acl?                 string
                 +--ro ipv4-acl?               string
                 +--ro ipv6-acl?               string
                 +--ro egress-group?           eg-group:egress-group-ref
                 +--ro sfc-id?                 uint32
                 +--ro description?            string
                 +--ro truncation-length?      uint16
                 +--ro terminate?              boolean
                 +--ro scope-shift?            boolean
                 +--ro qos-forwarding-group?   qos-forwarding-group-name-ref

module: extreme-saps
  +--rw saps
     +--rw sap* [name]
        +--rw name                -> ../config/name
        +--rw config
        |  +--rw name?           string
        |  +--rw id              uint32
        |  +--rw traffic-type?   common-types:sap-trfc-type
        |  +--rw parent-saps* [parent-sap]
        |     +--rw parent-sap    base-sap-ref
        +--ro state
        |  +--ro name?           string
        |  +--ro id              uint32
        |  +--ro traffic-type?   common-types:sap-trfc-type
        |  +--ro parent-saps* [parent-sap]
        |     +--ro parent-sap    base-sap-ref
        +--rw port-sap
        |  +--rw config
        |  |  +--rw port-names* [port-name]
        |  |  |  +--rw port-name    string
        |  |  +--rw port-ids* [port-id]
        |  |  |  +--rw port-id    uint16
        |  |  +--rw sfpath-id?      uint16
        |  |  +--rw sfpath-index?   uint8
        |  +--ro state
        |     +--ro port-names* [port-name]
        |     |  +--ro port-name    string
        |     +--ro port-ids* [port-id]
        |     |  +--ro port-id    uint16
        |     +--ro sfpath-id?      uint16
        |     +--ro sfpath-index?   uint8
        +--rw vxlan-sap
        |  +--rw config
        |  |  +--rw vni?                   uint32
        |  |  +--rw scope?                 boolean
        |  |  +--rw terminate?             boolean
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  +--ro state
        |     +--ro vni?                          uint32
        |     +--ro scope?                        boolean
        |     +--ro terminate?                    boolean
        |     +--ro source-ip-addr?               oc-inet:ip-address
        |     +--ro source-ip-mask?               oc-inet:ip-address
        |     +--ro destination-ip-addr?          oc-inet:ip-address
        |     +--ro destination-ip-mask?          oc-inet:ip-address
        |     +--ro protocol?                     oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?                  oc-inet:port-number
        |     +--ro destination-port?             oc-inet:port-number
        |     +--ro out-tunnel-hit-pkt-count?     uint64
        |     +--ro out-tunnel-hit-octet-count?   uint64
        +--rw nvgre-sap
        |  +--rw config
        |  |  +--rw vsid?                  uint32
        |  |  +--rw scope?                 boolean
        |  |  +--rw terminate?             boolean
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  +--ro state
        |     +--ro vsid?                         uint32
        |     +--ro scope?                        boolean
        |     +--ro terminate?                    boolean
        |     +--ro source-ip-addr?               oc-inet:ip-address
        |     +--ro source-ip-mask?               oc-inet:ip-address
        |     +--ro destination-ip-addr?          oc-inet:ip-address
        |     +--ro destination-ip-mask?          oc-inet:ip-address
        |     +--ro protocol?                     oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?                  oc-inet:port-number
        |     +--ro destination-port?             oc-inet:port-number
        |     +--ro out-tunnel-hit-pkt-count?     uint64
        |     +--ro out-tunnel-hit-octet-count?   uint64
        +--rw ipgre-sap
        |  +--rw config
        |  |  +--rw scope?                 boolean
        |  |  +--rw terminate?             boolean
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  +--ro state
        |     +--ro scope?                        boolean
        |     +--ro terminate?                    boolean
        |     +--ro source-ip-addr?               oc-inet:ip-address
        |     +--ro source-ip-mask?               oc-inet:ip-address
        |     +--ro destination-ip-addr?          oc-inet:ip-address
        |     +--ro destination-ip-mask?          oc-inet:ip-address
        |     +--ro protocol?                     oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?                  oc-inet:port-number
        |     +--ro destination-port?             oc-inet:port-number
        |     +--ro out-tunnel-hit-pkt-count?     uint64
        |     +--ro out-tunnel-hit-octet-count?   uint64
        +--rw gtpu-sap
        |  +--rw config
        |  |  +--rw teid?                  uint32
        |  |  +--rw scope?                 boolean
        |  |  +--rw terminate?             boolean
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  +--ro state
        |     +--ro teid?                         uint32
        |     +--ro scope?                        boolean
        |     +--ro terminate?                    boolean
        |     +--ro source-ip-addr?               oc-inet:ip-address
        |     +--ro source-ip-mask?               oc-inet:ip-address
        |     +--ro destination-ip-addr?          oc-inet:ip-address
        |     +--ro destination-ip-mask?          oc-inet:ip-address
        |     +--ro protocol?                     oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?                  oc-inet:port-number
        |     +--ro destination-port?             oc-inet:port-number
        |     +--ro out-tunnel-hit-pkt-count?     uint64
        |     +--ro out-tunnel-hit-octet-count?   uint64
        +--rw ipip-sap
        |  +--rw config
        |  |  +--rw scope?                 boolean
        |  |  +--rw terminate?             boolean
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  +--ro state
        |     +--ro scope?                        boolean
        |     +--ro terminate?                    boolean
        |     +--ro source-ip-addr?               oc-inet:ip-address
        |     +--ro source-ip-mask?               oc-inet:ip-address
        |     +--ro destination-ip-addr?          oc-inet:ip-address
        |     +--ro destination-ip-mask?          oc-inet:ip-address
        |     +--ro protocol?                     oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?                  oc-inet:port-number
        |     +--ro destination-port?             oc-inet:port-number
        |     +--ro out-tunnel-hit-pkt-count?     uint64
        |     +--ro out-tunnel-hit-octet-count?   uint64
        +--rw intermediate-sap
        |  +--rw config
        |  |  +--rw source-ip-addr?        oc-inet:ip-address
        |  |  +--rw source-ip-mask?        oc-inet:ip-address
        |  |  +--rw destination-ip-addr?   oc-inet:ip-address
        |  |  +--rw destination-ip-mask?   oc-inet:ip-address
        |  |  +--rw protocol?              oc-pkt-match-types:ip-protocol-type
        |  |  +--rw source-port?           oc-inet:port-number
        |  |  +--rw destination-port?      oc-inet:port-number
        |  |  +--rw mpls-header* [position]
        |  |  |  +--rw position         uint8
        |  |  |  +--rw label?           uint32
        |  |  |  +--rw traffic-class?   uint8
        |  |  |  +--rw time-to-live?    uint8
        |  |  +--rw tunnel-type?           common-types:sap-trfc-type
        |  |  +--rw tunnel-id?             uint32
        |  |  +--rw mirror?                mirror:mirror-ref
        |  |  +--rw log?                   common-types:log-type
        |  +--ro state
        |     +--ro source-ip-addr?        oc-inet:ip-address
        |     +--ro source-ip-mask?        oc-inet:ip-address
        |     +--ro destination-ip-addr?   oc-inet:ip-address
        |     +--ro destination-ip-mask?   oc-inet:ip-address
        |     +--ro protocol?              oc-pkt-match-types:ip-protocol-type
        |     +--ro source-port?           oc-inet:port-number
        |     +--ro destination-port?      oc-inet:port-number
        |     +--ro mpls-header* [position]
        |     |  +--ro position         uint8
        |     |  +--ro label?           uint32
        |     |  +--ro traffic-class?   uint8
        |     |  +--ro time-to-live?    uint8
        |     +--ro tunnel-type?           common-types:sap-trfc-type
        |     +--ro tunnel-id?             uint32
        |     +--ro mirror?                mirror:mirror-ref
        |     +--ro log?                   common-types:log-type
        |     +--ro hit-pkt-count?         uint64
        |     +--ro hit-octet-count?       uint64
        |     +--ro drop-pkt-count?        uint64
        |     +--ro drop-octet-count?      uint64
        +--rw network-sap
           +--rw config
           |  +--rw tunnel-type?   common-types:sap-trfc-type
           |  +--rw tunnel-id?     uint32
           +--ro state
              +--ro tunnel-type?       common-types:sap-trfc-type
              +--ro tunnel-id?         uint32
              +--ro hit-pkt-count?     uint64
              +--ro hit-octet-count?   uint64

module: extreme-sfcs
  +--rw sfcs
     +--rw sfc* [name]
     |  +--rw name        -> ../config/name
     |  +--rw config
     |  |  +--rw name?         string
     |  |  +--rw id?           uint32
     |  |  +--rw sfc-hopcnt?   uint8
     |  +--ro state
     |  |  +--ro name?           string
     |  |  +--ro id?             uint32
     |  |  +--ro sfc-hopcnt?     uint8
     |  |  +--ro packet-count?   uint64
     |  |  +--ro byte-count?     uint64
     |  +--rw sf-refs
     |  |  +--rw sf-ref* [sf-name]
     |  |     +--rw sf-name    -> ../config/sf-name
     |  |     +--rw config
     |  |     |  +--rw sf-name?   string
     |  |     |  +--rw sfc-hop?   uint8
     |  |     +--ro state
     |  |        +--ro sf-name?   string
     |  |        +--ro sfc-hop?   uint8
     |  +--rw sf-paths
     |     +--rw sf-path* [sf-path-id]
     |        +--rw sf-path-id      -> ../config/sf-path-id
     |        +--rw config
     |        |  +--rw sf-path-id?   uint32
     |        +--ro state
     |        |  +--ro sf-path-id?   uint32
     |        +--rw sf-inst-refs
     |           +--rw sf-inst-ref* [sf-inst-name]
     |              +--rw sf-inst-name    -> ../config/sf-inst-name
     |              +--rw config
     |              |  +--rw sf-inst-name?          string
     |              |  +--rw hop?                   uint8
     |              |  +--rw sf-nexthop?            uint16
     |              |  +--rw sf-egr-lagport-name?   string
     |              |  +--rw sf-egr-lagportid?      uint32
     |              |  +--rw dsap-id?               uint16
     |              |  +--rw encap-name?            string
     |              |  +--rw precedence?            uint16
     |              +--ro state
     |                 +--ro sf-inst-name?          string
     |                 +--ro hop?                   uint8
     |                 +--ro sf-nexthop?            uint16
     |                 +--ro sf-egr-lagport-name?   string
     |                 +--ro sf-egr-lagportid?      uint32
     |                 +--ro dsap-id?               uint16
     |                 +--ro encap-name?            string
     |                 +--ro precedence?            uint16
     +--rw sfc-groups
        +--rw sfc-group* [name]
           +--rw name        -> ../config/name
           +--rw config
           |  +--rw name?      string
           |  +--rw num-sfc?   uint8
           +--ro state
           |  +--ro name?      string
           |  +--ro num-sfc?   uint8
           +--rw sfc-refs
              +--rw sfc-ref* [name]
                 +--rw name      -> ../config/name
                 +--rw config
                 |  +--rw name?   sfc-ref
                 +--ro state
                    +--ro name?   sfc-ref

module: extreme-sfs
  +--rw sfs
     +--rw sf* [name]
        +--rw name         -> ../config/name
        +--rw config
        |  +--rw name?   string
        |  +--rw type?   enumeration
        +--ro state
        |  +--ro name?   string
        |  +--ro type?   enumeration
        +--rw instances
           +--rw instance* [name]
              +--rw name           -> ../config/name
              +--rw config
              |  +--rw name?   string
              +--ro state
              |  +--ro name?   string
              +--rw basic-sf
              |  +--rw config
              |  |  +--rw name?   string
              |  +--ro state
              |  |  +--ro name?   string
              |  +--rw saps
              |     +--rw sap* [name]
              |        +--rw name      -> ../config/name
              |        +--rw config
              |        |  +--rw name?           string
              |        |  +--rw apply-policy?   string
              |        |  +--rw sap-ref?        saps:base-sap-ref
              |        +--ro state
              |           +--ro name?           string
              |           +--ro apply-policy?   string
              |           +--ro sap-ref?        saps:base-sap-ref
              +--rw tgtproxy-sf
                 +--rw config
                 |  +--rw name?   string
                 +--ro state
                 |  +--ro name?   string
                 +--rw dsaps
                    +--rw dsap* [name]
                       +--rw name      -> ../config/name
                       +--rw config
                       |  +--rw name?           string
                       |  +--rw id              uint16
                       |  +--rw apply-policy?   string
                       +--ro state
                          +--ro name?           string
                          +--ro id              uint16
                          +--ro apply-policy?   string

module: extreme-transport-tunnel
  +--rw transport-tunnels
     +--rw transport-tunnel* [name]
        +--rw name              -> ../config/name
        +--rw config
        |  +--rw name?                    string
        |  +--rw description?             string
        |  +--rw source-ipv4-addr?        oc-inet:ipv4-address
        |  +--rw source-ipv4-mask?        oc-inet:ipv4-address
        |  +--rw source-ipv6-addr?        oc-inet:ipv6-address
        |  +--rw source-ipv6-mask?        oc-inet:ipv6-address
        |  +--rw destination-ipv4-addr?   oc-inet:ipv4-address
        |  +--rw destination-ipv4-mask?   oc-inet:ipv4-address
        |  +--rw destination-ipv6-addr?   oc-inet:ipv6-address
        |  +--rw destination-ipv6-mask?   oc-inet:ipv6-address
        |  +--rw tunnel-type?             common-types:sap-trfc-type
        |  +--rw tunnel-id?               uint32
        +--ro state
        |  +--ro name?                    string
        |  +--ro description?             string
        |  +--ro source-ipv4-addr?        oc-inet:ipv4-address
        |  +--ro source-ipv4-mask?        oc-inet:ipv4-address
        |  +--ro source-ipv6-addr?        oc-inet:ipv6-address
        |  +--ro source-ipv6-mask?        oc-inet:ipv6-address
        |  +--ro destination-ipv4-addr?   oc-inet:ipv4-address
        |  +--ro destination-ipv4-mask?   oc-inet:ipv4-address
        |  +--ro destination-ipv6-addr?   oc-inet:ipv6-address
        |  +--ro destination-ipv6-mask?   oc-inet:ipv6-address
        |  +--ro tunnel-type?             common-types:sap-trfc-type
        |  +--ro tunnel-id?               uint32
        |  +--ro packet-count?            uint64
        |  +--ro byte-count?              uint64
        +--rw ingress-groups
           +--rw ingress-group* [name]
              +--rw name      -> ../config/name
              +--rw config
              |  +--rw name?   ig-group:ingress-group-ref
              +--ro state
                 +--ro name?   ig-group:ingress-group-ref

module: extreme-mirror
  +--rw mirrors
     +--rw mirror* [name]
        +--rw name                 -> ../config/name
        +--rw config
        |  +--rw name?          string
        |  +--rw description?   string
        |  +--rw direction?     common-types:mirror-direction-type
        +--ro state
        |  +--ro name?          string
        |  +--ro description?   string
        |  +--ro direction?     common-types:mirror-direction-type
        |  +--ro mirror-id?     uint32
        +--rw mirror-dest-ports
           +--rw mirror-dest-port* [interface]
              +--rw interface    -> ../config/interface
              +--rw config
              |  +--rw interface?   string
              +--ro state
                 +--ro interface?   string